<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="../vue.js"></script>
</head>

<body>
  <div id="app">
    <!-- computed 是一个属性, 而不是一个函数, 所以mustache语法中不需要加括号调用 -->
    <h2>{{fullName}}</h2>
  </div>

  <script>
    const app = new Vue({
      el: "#app",
      data: {
        firstName: "kobe",
        lastName: "bulan"
      },
      computed: {
        // 完整写法 完整写法一般是传入一个对象, 对象里面有两个函数, set 和 get
        /* fullName: {
          // set函数用来设置属性, 但是在计算属性中, 一般只用get函数, 不用set函数 
          set: function (newValue) {
            // set函数一般有一个形参用于接收传递进来的参数
            const names = newValue.split(" ");
            this.firstName = names[0];
            this.lastName = names[1];
          },
          get: function () {
            return this.firstName + " " + this.lastName;
          }
        } */

        // computed 中一般不会用来设置属性, 所以只写get函数, 所以省略写法可以这样写
        fullName: function () {
          return this.firstName + " " + this.lastName;
        }
      }
    })
  </script>
</body>

</html>